Create your flash banner free online
چیست ELF

چیست ELF

. ELF چیست؟ مقدمه

ELF (اجرایی و لینک کردن فرمت) با فرمت باینری در اصل توسط USL (آزمایشگاه سیستم یونیکس) توسعه یافته و در حال حاضر در سولاریس و سیستم V انتشار 4 استفاده می شود. به دلیل افزایش انعطاف پذیری خود را بر فرمت a.out که لینوکس استفاده می شود که قبلا، شورای همکاری خلیج فارس و C کتابخانه توسعه دهندگان تصمیم گرفت در سال گذشته به حرکت با استفاده از ELF به عنوان فرمت استاندارد باینری لینوکس نیز است.

آشکار این انعطاف پذیری افزایش یافته است 'به عنوان اساسا دو سود به progammer برنامه های کاربردی به طور متوسط:

  • آن را بسیار ساده تر برای ایجاد کتابخانه های اشتراکی با ELF. به طور معمول، فقط همه فایل های شی با کامپایل -fPIC ، و سپس ارتباط با یک دستور مانند
      شورای همکاری خلیج فارس مشترک-WL-soname، libfoo.so.y-O libfoo.so.yx * است. 
    در صورتی که به نظر می رسد پیچیده، بدیهی است که شما تا کنون نمی خواند تا در روش معادل برای کتابخانه a.out مشترک، که شامل جمع آوری کتابخانه دو بار، رزرو فضا برای تمام داده های شما فکر می کنم که کتابخانه به احتمال زیاد در آینده نیاز است، و ثبت نام که فضای آدرس با شخص ثالث (آن را در یک سند بیش از 20 طول صفحات --- نگاه در ftp://tsx-11.mit.edu/pub/linux/packages/GCC/src/tools-2.17.tar GZ برای جزئیات بیشتر).
  • این کار باعث بارگذاری پویا (برنامه یعنی که می تواند ماژول ها در زمان اجرا بار) بسیار ساده تر است. این است که پرل 5، Python و جاوا استفاده می شود، در میان چیزهای دیگر (این یک ضربه زن برای انواع بسیاری از مفسران). پیشنهادات دیگر برای بارگذاری پویا شامل لجن فوق العاده سریع، که در آن کد اضافی می تواند و به اجرایی در حال اجرا وارد شده در ارتباط بدون نیاز به توقف و راه اندازی مجدد برنامه است.

در برابر این موضوع، آن را باید به وزن که ELF است احتمالا کمی کندتر است. چهره های که به bandied اطراف بین 1٪ و 5٪ هستند، هر چند تمام آزمون واقعی است که تا کنون انجام شده است نشان می دهد که اختلاف به اندازه کافی کوچک است که در سر و صدا از وقایع دیگر اتفاق می افتد در همان زمان گم. اگر شما تک و یا یک بیننده / چاپگر پست اسکریپت، شما قادر به خواندن speed.comp-1.0.tar.gz ، که در دسترس است از SunSite جایی.

کاهش سرعت می آید از این واقعیت است که کد کتابخانه ELF باید جایگاه مستقل (این است آنچه را که -fPIC بالا مخفف) و به همین ترتیب ثبت نام باید به برگزاری آفست اختصاص داده شده است. این یکی کمتر برای برگزاری متغیر در و 80x86 کمبود ثبات همه منظوره به هر حال می. توجه داشته باشید که تفاوت سرعت تنها به کد است که بخشی از کتابخانه های اشتراکی شامل است. برای برنامهها و یا دانه است، تفاوت سرعت بین a.out و ELF وجود دارد.

1.1 چه ELF نمی باشد.

تعدادی از تصورات غلط رایج در مورد چه ELF برای سیستم شما انجام دهد وجود دارد:

این راه را برای اجرای برنامه های SVR4 و یا سولاریس است

هر چند که همان باینری `ظرف به عنوان SVR4 سیستم استفاده، این بدان معنا نیست که SVR4 برنامه ناگهان runnable بر روی لینوکس است. این شبیه به یک فرمت دیسک --- شما می توانید از برنامه های لینوکس را بر روی MSDOS یا مینیکس فرمت دیسک، و بالعکس، اما این بدان معنا نیست که این سیستم قادر به اجرای برنامه های یکدیگر می شوند.

ممکن است برای اجرای یک برنامه کاربردی برای دیگری یونیکس X86 تحت لینوکس (آن را در برنامه بستگی دارد)، اما پس از دستورالعمل های این HOWTO خواهد شد که اثر را ندارد. با نگاه کردن ماژول کرنل iBCS (جایی در tsx-11.mit.edu ) شروع کنید و ببینید که اگر آن را متناسب با نیازهای شما.

این ذاتا کوچکتر یا سریعتر

شما هم ممکن است با باینری کوچکتر پایان دادن به هر حال، هر چند، همانطور که شما به راحتی می توانید ایجاد کتابخانه های اشتراکی از کد مشترک بین بسیاری از برنامه های. به طور کلی، اگر شما با استفاده از گزینه های کامپایلر و فایل های باینری شما می آیند کوچکتر از آنها با a.out، آن را به احتمال زیاد به اتفاق و یا یک نسخه از کامپایلر های مختلف است. همانطور که برای `سریعتر، من شگفت زده می شود. افزایش سرعت می تواند به نوبه خود اگر باینری خود را کوچکتر، به دلیل کمتر مبادله و یا بزرگتر از زمینه های کاربردی اتصالات در کش.

نیازی نیست که هر دوتایی بر روی سیستم خود را عوض کنید

در پایان از این روش شما باید یک سیستم قادر به کامپایل کردن و اجرای برنامه های ELF و a.out. برنامه های جدید به طور پیش فرض در ELF وارد شده، اما این می تواند با سوئیچ خط فرمان لغو است. مسلما مجازات حافظه برای اجرای سیستم مختلط ELF / a.out --- اگر شما هر دو نژاد از برنامه در حال اجرا در یک بار شما نیز دارای دو نسخه از کتابخانه C در هسته، و به همین ترتیب. من تا به حال گزارش می دهد که تفاوت سرعت از این در استفاده از نرمال در سیستم 6MB هر چند (من قطعا متوجه های زیادی را در 8MB)، پس از آن به سختی و با فشار دادن غیر قابل کشف است. شما از دست دادن حافظه به مراتب بیشتر هر روز با اجرای برنامه های پف کرده مانند ایمکس و استاتیک موزائیک / نت اسکیپ باینری :-)

این هیچ ربطی به با بورس است.

یا حداقل در این زمینه است.

1.2 چرا شما باید تبدیل به ELF

اساسا به دو دلیل به روز رسانی سیستم خود را کامپایل و اجرای برنامه های ELF وجود دارد: اول، افزایش انعطاف پذیری در برنامه گفته شده در بالا، و دوم این است که به دلیل اول، هر کس دیگری (یا در حال حاضر). نسخه های فعلی کتابخانه C و شورای همکاری خلیج فارس فقط برای ELF وارد شده، و توسعه دهندگان دیگر در حال حرکت ELFwards بیش از حد.

بسیاری از مردم در مورد ثبات (به نحو موجهی بنابراین، حتی اگر آن را بسیار سرگرم کننده نیست). ELF در لینوکس از ماه اوت سال 1994 وجود داشت و علنی از ماه مه یا ژوئن سال 1995 در دسترس بوده است، از مشکلات دندان در آوردن هستند احتمالا از راه در حال حاضر است. شما باید برای احتمال شکستن کارها را اجازه می دهد --- شما می توانید با هر ارتقاء عمده --- فن آوری است که شما در حال ارتقاء به دیگر خونریزی لبه. برای یک سیستم که در آن هر توسعه انجام شده است، و یا در جایی که شما می خواهید برای اجرای تالیف باینری افراد دیگر، ELF است که تقریبا یک ضرورت است این روزها. طرح به جای آن زمانی که شما به نسخه 2.0 از هسته ارتقا دهید.

1.3 چگونه برای تبدیل به ELF

هنگامی که این HOWTO برای اولین بار نوشته شده بود، تنها یک راه وجود دارد، و آن راه را در اینجا شرح داده است. این روزها توزیعهای ارتقا کیفیت بالا وجود دارد --- مگر اینکه شما، زمان قابل توجهی را سرمایه گذاری در راه اندازی ماشین شما دقیقا چگونه شما آن را دوست دارم، شما ممکن است که یک نسخه ی پشتیبان از تمام اطلاعات خود را و از کلاه قرمز اخیر نصب مجدد و یا انتشار دبیان است راحت تر از خراب در مورد کتابخانه ها و کامپایلر همه فن حریف در اینجا شرح داده است.

من باید این استرس است. کار نسبتا کوچک به خودی خود نصب در اینجا شرح داده است (می توان آن را در کمتر از یک ساعت کامل شد، به استثناء زمان صرف شده برای دانلود نرم افزار جدید)، اما بسیاری از خطاها را که شما می توانید که احتمالا شما را از نظر وجود دارد یک سیستم unbootable. اگر شما راحت با ارتقاء کتابخانه های اشتراکی، اگر دستورات و ldconfig ldd ldconfig معنی چیزی برای شما، و یا اگر شما ناراضی ساخت بسته های کد منبع، شما باید گزینه آسان در نظر بگیرند. حتی اگر این شرح است که شما، در مورد آن فکر می کنم به هر حال --- اگر شما می خواهید، به طور کامل سیستم ELF، کسی است به زودی به کامپایل مجدد فایل های باینری بر روی آن.


نظرات شما عزیزان:

نام :
آدرس ایمیل:
وب سایت/بلاگ :
متن پیام:
:) :( ;) :D
;)) :X :? :P
:* =(( :O };-
:B /:) =DD :S
-) :-(( :-| :-))
نظر خصوصی

 کد را وارد نمایید:

 

 

 

عکس شما

آپلود عکس دلخواه:





مطالب قبلي





Copyright © 2009-20010 Loxblog.com All Rights Reserved . Designed by Loxblog.com

amoozesh-osn

سید امیر محمد میرصفی

amoozesh-osn

http://amoozesh-osn.loxblog.com

وبلاگ تخصصی سیستم عامل شبکه

چیست ELF

وبلاگ تخصصی سیستم عامل شبکه

به وبلاگ من خوش آمدید .:Operation System Net:.

وبلاگ تخصصی سیستم عامل شبکه

ابزار پرش به بالا